#ifndef CPP_DIALOG_INTERFACE_H
#define CPP_DIALOG_INTERFACE_H

//@brief 对话框接口类
//@author cvte
//@description 配合对话框Dialog类使用，实现对Dialog的控制和监听
class DialogInterface {
   public:
    //确定按钮标识.
    const static int BUTTON_POSITIVE;
    //取消按钮标识.
    const static int BUTTON_NEGATIVE;
    //中间按钮标识.
    const static int BUTTON_NEUTRAL;

    virtual void cancel();

    virtual void dismiss();

    class OnCancelListener {
       public:
        virtual void onCancel(DialogInterface& dialog){};
    };

    class OnDismissListener {
       public:
        virtual void onDismiss(DialogInterface& dialog){};
    };

    class OnShowListener {
       public:
        virtual void onShow(DialogInterface& dialog){};
    };

    class OnClickListener {
       public:
        virtual void onClick(DialogInterface& dialog, int which){};
    };
};

#endif /* CPP_DIALOG_INTERFACE_H */